home *** CD-ROM | disk | FTP | other *** search
- /* TrackActivate.c */
- /*
- * Copyright © 1989 Martin Minow. All rights reserved.
- *
- * void
- * TrackActivate(track_handle)
- * TrackHandle track_handle;
- *
- * void
- * TrackDeactivate(track_handle)
- * TrackHandle track_handle;
- *
- * These routines are called when the application program
- * receives an activate or deactivate event. They may
- * also be called temporarily to erase any current
- * selection if, for example, the application program
- * needs to change the hiliting characteristics.
- */
- #include "TrackEdit.h"
- #define TR (*tr)
-
- void
- TrackActivate(track_handle)
- TrackHandle track_handle;
- {
- register TrackPtr tr;
- _Track_state state;
-
- tr = _Track_lock(track_handle, &state);
- SetPort(TR.inPort);
- if (!_Track_is_set(tr, _Track_is_active)) {
- /*
- * Activating: call the hiliters to invert any
- * selection.
- */
- _Track_set(tr, _Track_is_active);
- _Track_hilite(tr, TR.selStart, TR.selEnd);
- _Track_caret(tr, _Track_caret_on);
- }
- _Track_unlock(&state);
- }
-
- void
- TrackDeactivate(track_handle)
- TrackHandle track_handle;
- {
- register TrackPtr tr;
- _Track_state state;
-
- tr = _Track_lock(track_handle, &state);
- if (_Track_is_set(tr, _Track_is_active)) {
- /*
- * Deactivating: invert any selection to
- * erase it from the window.
- */
- _Track_hilite(tr, TR.selStart, TR.selEnd);
- _Track_caret(tr, _Track_caret_off);
- _Track_clear(tr, _Track_is_active);
- }
- _Track_unlock(&state);
- }
-
-